<?php

class QuejaServicioOcebaForm extends ReclamoForm
{

  public function configureWidgets()
  {
    parent::configureWidgets();
        $this->widgetSchema->setLabel('condicion_del_reclamante', 'Condición del reclamante');

    $this->setWidget('condicion_del_reclamante', new dcWidgetFormReferenceModelChoice(array(
        'model' => 'Condicion',
        'add_empty' => true
      )));
    $this->getWidget("condicion_del_reclamante")->setOption('renderer_class', 'mbWidgetFormChosenChoice');    $this->widgetSchema->setLabel('condicion_del_reclamante', 'Condición del reclamante');

    $this->setWidget('condicion_del_reclamante', new dcWidgetFormReferenceModelChoice(array(
        'model' => 'Condicion',
        'add_empty' => true
      )));
    $this->getWidget("condicion_del_reclamante")->setOption('renderer_class', 'mbWidgetFormChosenChoice');
  }
  public function unsetFields()
  {
    $this->useFields(array("id",
      "tipo_atencion_id",
      "sf_guard_user_id",
      "asunto_id",
      "cliente_id",
      "condicion_del_reclamante",
      "nombre_reclamante",
      "nis_reclamante",
      "telefono_reclamante",
      "email_reclamante",
      "horario_contacto",
      "estado",

      "observacion"
    ));
  }

    public function configureValidators()
  {
    sfContext::getInstance()->getConfiguration()->loadHelpers(array('I18N'));
    parent::configureValidators();
    $this->getValidator('cliente_id')->setOption('required', false);
    $this->getValidator('estado')->setOption('required', true);
    $this->validatorSchema->setPostValidator(
      new sfValidatorCallback(array('callback' => array($this, 'validarPendiente')))
    );
  }

    protected function doSave($con = null)
  {
    $this->getObject()->generarNroReclamo();
    $this->getObject()->setEs0800(true);
    parent::doSave($con);
  }

}
